1. Field of the Invention
The present invention relates to an information processing apparatus provided with a function to control the program boot during the boot-up of the BIOS (Basic Input/Output System), and the program thereof.
2. Background of the Invention
The information processing apparatus such as a printer, photocopier and multifunction peripheral used in an office is maintained by the service personnel to keep the initial performances and to ensure correct operations under operating conditions. For example, when the service personnel is to maintain the control system of the information processing apparatus and the objects (operated sections) to be controlled by this control system, the maintenance program for self-diagnosis stored in the recording medium of the information processing apparatus is booted up and maintenance work is performed.
This maintenance program runs on the Operating System (OS) mounted on the information processing apparatus. The power of the information processing apparatus is turned on and the OS (apparatus) is booted. After that, the maintenance program is booted, and the service personnel is then allowed to change the basic setting of the information processing apparatus through the menu screen (setup menu) opened by the maintenance program. Further, the service personnel may be allowed to access the program in the information processing apparatus by taking the predetermined steps.
If these steps are taken by a general user carelessly, a serious trouble may occur to the information processing apparatus. This may involve security problems such as leakage of the data stored in the information processing apparatus. Accordingly, it is a common practice that the personnel (service personnel) wishing to boot up a specific program (maintenance program) takes an authentication step such as inputting of the ID (Identification) or password. Only when the authentication is valid, the specific program boots up.
For authentication of the principal (authentication system at the time of maintenance) for security purposes at the time of maintaining the information processing apparatus, the principal directly enters the ID or password. In addition to this method, a portable recording medium such as a flexible disk cartridge recording the basic password is set on the medium reader connected to the information processing apparatus, and the basic password is obtained from the portable recording medium. Alternatively, the one-time password is obtained from the service center via the communications line, whereby the authentication section inside the apparatus determines the validity of such authentication data having been obtained (see for example, Japanese Unexamined Patent Application Publication No. 2004-157845 (JPA2004-157845)).
In the meantime, in the boot-up processing performed in the computer system, the designation of the booting drive is determined by the setting of the BIOS (BIOS setup menu). Booting is carried out from the drive which has been assigned with the top priority (see for example, Japanese Unexamined Patent Application Publication No. 2002-215399 (JPA2002-215399)). The same boot-up processing applies to the information processing apparatus equipped with a computer system such as a multifunction peripheral.
FIG. 15 shows the flow of boot-up processing in the conventional information processing apparatus. As shown in FIG. 15, when the user or service personnel has turned on the information processing apparatus (Step S201), the initializing program in the BIOS program stored in the ROM (Read Only Memory) of the information processing apparatus is called out and is executed (Step S202). The initialization of the peripheral device (Power On Self Test; POST) including initialization of the video card, checking of the memory and initialization of the device is carried out (Step S203).
Upon completion of initialization of the peripheral device, the booting drive is searched (Step S204). For example, when a flexible disk cartridge drive, HDD (Hard Disk Drive), CD-ROM (Compact Disk Read Only Memory) drive, removable disk or memory card (recording medium) is mounted on the information processing apparatus, the boot-up order is determined by the setting of the BIOS.
When the top priority is assigned to the recording medium (CF) such as the Compact Flash (CF) (trademark registered by SanDisk, U.S.A.) mounted in the information processing apparatus by the setting of the BIOS, the program is booted from that recording medium (CF). To be more specific, the Master Boot Record (MBR) of the recording medium (CF) as the first boot device is loaded in the memory, and the control transfers to the boot program written there (Step S205).
The boot program searches the boot partition (Step S206) to find out the leading position of the boot partition from the partition table, and loads the boot sector in the memory (Step S207).
The program recorded on the boot sector loads the OS loader in the memory and transfers control to the OS (Step S208). The OS boots up the program that controls the operation of the information processing apparatus (Step S209), whereby the information processing apparatus is enabled.
As described above, in the conventional information processing apparatus, the default booting drive is set on the recording medium (memory card) such as the Compact Flash mounted inside the information processing apparatus. Even if the USB (Universal Serial Bus) drive released to the user or service personnel is connected with an external UBS memory device that has been enabled, booting starts from the booting drive in the apparatus assigned with the top priority, namely, from the recording medium such as Compact Flash.
In the information processing apparatus loaded with the booting OS of the apparatus and a specific program (maintenance program) running on this OS, one may wish to change or update the specific program in order to correct the specific program failure and to improve the function. However, since the program runs on the booting OS of the information processing apparatus, any attempt to change or update the program is subjected to the restriction of the OS. Alternatively, the OS will have to be updated in conformity to the change or updating of the program.
Further, when the OS is booted by the booting device inside the information processing apparatus, or the program stored in the external device such as a USB memory is to be executed under this OS, the program of the external device must be made to conform to the OS of the apparatus. Thus, when the program of the external device is to be changed or updated, the restriction of the OS of the apparatus cannot be avoided. Alternatively, the OS of the apparatus must be changed in conformity to the change or updating of the program of the external device.
Further, when one wishes to boot from the program stored in the external device (e.g., USB memory), the external device must be assigned on the BIOS setup menu with a higher priority than that of the device (e.g., Compact Flash) inside the information processing apparatus. As described above, due to the security problem for the general users, the BIOS-setup menu is not released to the user. To be more specific, if the BIOS setup menu is released to the user, the information processing apparatus will be booted by the general OS such as the DOS (Disk Operating System) and Windows (trademark registered by Microsoft, U.S.A.) and the program stored in the device of the apparatus may be accessed. To eliminate this possibility, settings are determined to ensure that booting starts from the device inside the apparatus, even when an external device has been connected.
It can be assumed that booting starts from the external device by removing the device inside the apparatus assigned with higher boot-up priority (e.g., Compact Flash). However, with consideration given to security, the mechanical structure is so designed that the user cannot remove the internal device.
By contrast, according to the technology disclosed in JPA2004-157845, only when the authentication data such as the basic password obtained from the portable recording medium or the one-time password obtained from the service center via the communications line is valid, a specific program is booted. However, although-security can be ensured, OS restriction cannot be avoided when the maintenance program is changed or updated, because since the maintenance program runs on the booting OS of the apparatus. Alternatively, the OS must be modified in conformity to the change or updating of the maintenance program.
Further, according to the technology disclosed in JPA2002-215399, boot-up processing is applied in such a way that a plurality of booting devices stored in one and the same OS are searched according to the priority at the time of booting the computer system, and booting starts from the device that can be booted. Even when an unauthorized external device that can be booted is connected, if the priority condition is met, booting starts from that external device. Thus, the user may access the program inside the computer system, and security cannot be ensured.
The object of the present invention is to solve above-mentioned problems and to provide an information processing apparatus and program capable of switching the booting drive over to the external recording medium during BIOS boot-up operation, while ensuring the security of the apparatus.